package com.hnyfkj.jyindustry.biz.mqtt.controller;

import com.alibaba.fastjson.JSONObject;
import com.hnyfkj.jyindustry.biz.mqtt.data.SendData;
import com.hnyfkj.jyindustry.biz.mqtt.send.IMqttSender;
import com.hnyfkj.jyindustry.common.utils.Response;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

/**
 * @author 一蓑烟雨
 * @version 1.0
 * @date 2021/5/26 17:05
 */
@RestController
public class HelloController {
    /**
     * 注入发送MQTT的Bean
     */
    @Autowired
    private IMqttSender iMqttSender;

    // 发送自定义消息内容（使用默认主题）
    @RequestMapping("/test1/{data}")
    public void test1(@PathVariable("data") String data) {
        System.out.println("这是发送的数据:" + data);
        iMqttSender.sendToMqtt(data);
    }

    // 发送json数据（使用默认主题）
    @RequestMapping("/pi")
    public Response zhangPi(@RequestBody SendData data) {
        String s = JSONObject.toJSONString(data);
        System.out.println("这是发送的数据:" + s);
        iMqttSender.sendToMqtt(s);
        return Response.success("发送指令成功");
    }


    // 发送自定义消息内容，且指定主题
    @RequestMapping("/raspi")
    public Response test3(@RequestParam("topic") String topic, @RequestBody SendData data) {
        String s = JSONObject.toJSONString(data);
        System.out.println("这是发送的数据:" + s);
        iMqttSender.sendToMqtt(topic, s);
        return Response.success("发送自定义指令成功");
    }
}
